home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PRINTER / FINEPRNT.ARJ / FINEPRNT.DOC < prev    next >
Text File  |  1991-01-20  |  12KB  |  253 lines

  1.  
  2. NAME
  3.    fineprnt --- fine printing on an hp+ or compatible laser printer
  4.  
  5.  
  6. SYNOPSIS
  7.    fineprnt  options filenames
  8.  
  9.  
  10. DESCRIPTION
  11.    Fineprnt prints ascii or binary files in a column oriented manner on an hp+
  12.    or compatible laser printer. It uses a small 6pt fixed or proportionally
  13.    spaced font downloaded before printing. The printout can be tuned to any
  14.    paper size, portrait or landscape mode. Double sided printing is supported
  15.    with page layout adjusted to odd (right hand side) and even (left hand side)
  16.    pages. It is typically used to print program listings, readme files and the
  17.    like in a very compressed form.
  18.  
  19.    Fineprnt is a stand-alone program but supports an environment variable and
  20.    an optional configuration file.
  21.  
  22.  
  23. OPTIONS
  24.    Options and filenames (which can contain wildcards) can be given in any
  25.    order, however, all options are processed before printing starts, and all
  26.    files are printed with the same setting. Options must be separated by spaces.
  27.    In the following list, # stands for an integer number, ? for a single
  28.    character and * for a string of characters. Defaults, given in parentheses,
  29.    are adjusted for standard A4 paper in portrait mode. The values for some
  30.    length parameters are in dots, one dot being 1/300 inch, the resolution of
  31.    the hp+ printer.
  32.  
  33.    Note that the area of print does not usually coincide with the physical
  34.    size of the paper. The margin parameters, therefore, do not necessarily
  35.    count from the borders of the sheet.
  36.  
  37.    Before printing all files are scanned to determine the number of columns and
  38.    lines for each file and to search for lines that may have to be truncated.
  39.  
  40.  
  41.        -c#  Number of characters per line (80). This parameter controls the
  42.             width of each column. When the proportional font is selected the
  43.             actual number of characters printed can be more or less, depending
  44.             on the total width being less or more of that what the fixed
  45.             spacing font would produce.
  46.  
  47.        -l#  Number of lines per column (132). This parameter controls the page
  48.             length.
  49.  
  50.        -s#  Number of columns per page (2).
  51.  
  52.        -o#  Left margin in dots (175) on all pages in single sided mode, or on
  53.             odd pages in 2-sided mode.
  54.  
  55.        -e#  Left margin in dots (0) on even pages in 2-sided mode. If landscape
  56.             mode and 2-sided printing is specified, this parameter applies to
  57.             the upper margin on even sides.
  58.  
  59.        -u#  Upper margin in dots (0). If landscape mode and 2-sided printing is
  60.             specified, this parameter applies to the upper margin on odd sides
  61.             only.
  62.  
  63.        -b#  Baselineskip in dots (24). A value less than 24 is not recommended.
  64.             A larger value might yield a slightly better readability, but at
  65.             the cost of less lines fiting on the page.
  66.  
  67.        -a#  First page to print (1).
  68.  
  69.        -z#  Last page to print (last page of this print job).
  70.  
  71.        -t#  Set tab stops every # characters (8).
  72.  
  73.        -w#  Wrap option for lines longer than the column width:
  74.              1  Wrap lines.
  75.              0  Truncate lines (the default).
  76.             -1  Continue printing beyond the column width.
  77.  
  78.        -f#  Frame around each column:
  79.             0  No frame.
  80.             1  Vertical lines as separator between columns only.
  81.             2  Horizontal lines above and below each column.
  82.             3  A box around each column (the default).
  83.  
  84.        -h#  Header and footer for each column:
  85.             0  No header or footer.
  86.             1  Print filename as header only.
  87.             2  Print column number as footer only.
  88.             3  Filename as header, column number as footer.
  89.             4  As above, plus information on file modification and the
  90.                total number of columns for this file (the default).
  91.  
  92.        -n#  Option for line numbering. If a positive number is specified lines
  93.             are numbered consecutively, starting from 0 for each file,
  94.             incremented by the given number. Note that column 2 and higher are
  95.             shifted a further 4 character spaces each to the right to
  96.             accommodate room for the line numbers. If a negative number is
  97.             given, only the innermost column of each page is numbered, starting
  98.             from 0 on each page and incremented by the absolute value of the
  99.             given number. Column alignment is not changed in this case.
  100.  
  101.             The default is 0, no line numbering.
  102.  
  103.  
  104.    -#[e/o]  Specify one/two-sided or no printing:
  105.             -2   2-sided printing, odd sides first, prompt to print even sides
  106.             -2e  2-sided, even sides only (off)
  107.             -2o  2-sided, odd  sides only (off)
  108.             -1o  1-sided, margins as for odd sides, same as -1 (default)
  109.             -1e  1-sided, but margins as for even sides
  110.             -0   don't actually print, find number of columns for each file
  111.                  only. 
  112.  
  113.  
  114.     -B?[.]  Dump bytes instead of ascii interpretation. The character following
  115.             the -B indicates: X=HEX, x=hex, o=octal or b=binary representation.
  116.             Any other or no character defaults to ascii interpretation. An
  117.             optional period (.) changes any zeros in the print into periods,
  118.             which may improve readability in some circumstances.
  119.  
  120.        -P*  direct output:
  121.             If a single digit is given after the -P it specifies the printer
  122.             port, the default is 1.
  123.             For any other string following -P the output is redirected (append
  124.             mode) into a file named by the given string.
  125.  
  126.        -F?  Select font,  f = fixed, p = proportional, default is f.
  127.  
  128.        -O?  Page orientation, p = portrait, l = landscape (p).
  129.  
  130.        -N?  To start a new file, advance
  131.             l  5 lines
  132.             h  to next half column
  133.             c  to next column
  134.             p  to a new side
  135.             s  to a new sheet
  136.             x  variable: if the next file fits in the same column (including 5
  137.                empty separation lines), it is printed there. Otherwise, the
  138.                current column is ended, and if the new file entirely fits in one
  139.                column, it is printed in the next one. If it exeeds one column,
  140.                printing starts on a fresh side. If it exeeds one side printing
  141.                starts on a new sheet (which is only different from a new side
  142.                if 2-sided printing is active and the last file ended on an odd
  143.                side).
  144.  
  145.        -D*  Directory containing fineprnt.cfg (.).
  146.  
  147.        -E*  Disregard any characters between a form-feed and the next newline
  148.             character:  -Eon switches this feature on. Any other string
  149.             following -E means off (default is off).
  150.  
  151.        -Z*  Recognise ctrl-Z as file terminator. -Zon activates this feature,
  152.             any other string after -Z means off (default is off).
  153.  
  154.  
  155. USER-DEFINED OPTIONS
  156.    When an option is not found under those listed above, a file fineprnt.cfg is
  157.    searched (see under FILES) and scanned for a line whose first word (a string
  158.    followed by one or more blank spaces) matches that option (stripped of the
  159.    introducing character - or /). If a match is found, the rest of that line is
  160.    parsed for options, just like command line options or the value of the
  161.    environmental variable, with the only difference that nesting is not
  162.    possible. Note that the name of a user-defined option cannot start with one
  163.    of the 8 upper case letters B, D, E, F, N, O, P or Z. It can start with any
  164.    lower case letter, but if it is one of a, b, c, e, f, h, l, n, o, s, t, u,
  165.    w, or z, the second character must not be a digit, - or +.
  166.  
  167.    This feature is thought to provide a convenient way to abbreviate a set of
  168.    options to customise the program to individual taste or printer set-ups. An
  169.    example: If fineprnt.cfg exists and contains the following line
  170.        quer  -Ol  -l88  -u27  -s3  -2  -o85
  171.    typing
  172.        fineprnt  -quer  myfile
  173.    will print myfile in landscape mode, with 88 lines per column, 3 columns per
  174.    page, etc.
  175.  
  176.  
  177. ENVIRONMENT
  178.    FINEPRNT --- a list of options processed before (and overridden by) command
  179.    line options. The environment variable is optional.
  180.  
  181.  
  182. FILES
  183.    finepnrt.cfg  --- an optional ascii file containing sets of user-defined
  184.    options. If the -D option is not specified, the file is first searched in the
  185.    current directory and than in the directory containing fineprnt.exe. The
  186.    file need not exist.
  187.  
  188.  
  189. FYI
  190.    In ascii mode formfeed characters act as a vertical tab of half a column
  191.    distance: If the current column is less than half filled, printing continues
  192.    at line 1+l/2 where l is the number of lines per column. If the current
  193.    column is more than half filled, printing continues in the next column.
  194.  
  195.    Backspace characters are sometimes used to simulate bold printing on 
  196.    dot-matrix printers. This has no effect, however, on a laser printer. To
  197.    follow the dot-matrix printer convention char-\b-char sequences are rendered
  198.    by shifting the second printed character one dot to the right and upwards 
  199.    which gives the appearance of a bolder stroke width.  
  200.  
  201.  
  202. RESTRICTIONS
  203.    Only standard printable ascii characters can be handled. Unfortunately
  204.    IBM and HP implemented different sets of extended characters, requiring a
  205.    remapping. Extended characters are on the list of things to do. I might
  206.    tackle this after my return to Europe.
  207.  
  208.  
  209. LIMITATIONS
  210.    The maximum number of charaters per line is 511. The maximum length of a
  211.    command line is 128 characters. The number of files to be printed is only
  212.    limited by the amount of memory available to store their names.
  213.  
  214.    The total number of characters on a normal A4 page can be 20,000 or more. A
  215.    page with little white space (as it may occur when using the -B option) can
  216.    exhaust the printer's memory, which results in a "page too complex" error on
  217.    the printer. Apart from adding memory to the printer, the only remedy is to
  218.    reduce the number of total characters per page using the -c, -l, or -s
  219.    options.
  220.  
  221.  
  222. CAVEATS
  223.    The program has only been tested on 8086, 80286  and 80386 processors, under
  224.    DOS 3.2 and 3.3 and with the following printers: hp3, Epson GQ-3500 and
  225.    Dataproducts LZR-1230, the latter two emulating an hp+. It should run under
  226.    any DOS 2.0 or higher.
  227.  
  228.  
  229. SHAREWARE
  230.    If you use fineprnt beyond an evaluation period, send $20 to the
  231.    Trees-For-Life people, Greenpeace or any other environment protection
  232.    organisation of your choice. If you don't use this program to print your
  233.    ascii files, send 1 cent for each page you print to Trees-For-Life anyway.
  234.    Fineprnt is free if used to print on recycled paper. If you don't comply
  235.    with this rules, you must plant one tree for each 50 pages you print.
  236.  
  237.  
  238. AUTHOR
  239.    Jorg Hartmann
  240.  
  241.       FIAMS, Flinders University of South Australia, Bedford Park SA 5042.
  242.       e-mail: mojh@research.cc.flinders.edu.au
  243.  
  244.    I will be leaving Australia in early March 1991, and from April 1991 I
  245.    will be at
  246.  
  247.       Alfred Wegener Institut f\"ur Polar- und Meeresforschung
  248.       Columbusstrasse, 2850 Bremerhaven, Germany.
  249.       e-mail: postmaster@vax.awi-bremerhaven.dbp.de
  250.  
  251.  
  252. Copyright (c) 1990, 1991 Jorg Hartmann.                             Version 1.3
  253.